package com.xunce.xcworkservice.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xunce.xcworkservice.dto.LoginDto;
import com.xunce.xcworkservice.entity.Account;
import com.xunce.xcworkservice.exception.CustomException;
import com.xunce.xcworkservice.vo.IPageVo;
import com.xunce.xcworkservice.vo.UserInfoVo;
import com.xunce.xcworkservice.vo.UserSimpleVo;

import java.util.List;
import java.util.Map;

/**
 * @author yanlong.guo
 */
public interface AccountService extends IService<Account> {

    UserInfoVo login(LoginDto loginDto) throws CustomException;

    void logOut();

    Account getUserByLogName(String logName);

    IPageVo<UserInfoVo> selectPageByMap(Map<String, Object> params);

    void edit(Account account);

    void batchSetAccountFillInfo(List<UserInfoVo> userInfoVoList);

    List<UserSimpleVo> getTagAccount(String tag);

}
